home *** CD-ROM | disk | FTP | other *** search
/ Financial Peace University Interactive Bonus / Financial Peace University Bonus Interactive CD-ROM.iso / pc / calculators / reality_check_new.swf / scripts / frame_144 / DoAction.as
Encoding:
Text File  |  2006-01-27  |  4.3 KB  |  157 lines

  1. function calculateSavings(b, p, t)
  2. {
  3.    var _loc6_ = 0.12;
  4.    var _loc7_ = 12;
  5.    var _loc4_ = _loc6_ / _loc7_;
  6.    trace("Savings -------------------------------------------------------");
  7.    while(t > 0)
  8.    {
  9.       b *= 1 + _loc4_;
  10.       b += p;
  11.       t -= 1;
  12.    }
  13.    _global.YourResult = Math.floor(b);
  14.    trace("Savings: " + _global.YourResult);
  15. }
  16. _global.TimeFrame = (65 - Number(_global.Age)) * 12;
  17. _global.MonthlyExpenses = Number(_global.MonthlyIncome);
  18. if(_global.Housing == "rent")
  19. {
  20.    if(isNaN(Number(_global.HousingPayment)) == 0)
  21.    {
  22.       _global.MonthlyExpenses -= Number(_global.HousingPayment);
  23.    }
  24. }
  25. else if(_global.Housing == "own" && isNaN(Number(_global.MortgageQty)) == 0)
  26. {
  27.    if(_global.MortgageQty >= 1)
  28.    {
  29.       _global.MonthlyExpenses -= Number(_global.MortgagePayment1);
  30.    }
  31.    if(_global.MortgageQty >= 2)
  32.    {
  33.       _global.MonthlyExpenses -= Number(_global.MortgagePayment2);
  34.    }
  35.    if(_global.MortgageQty == 3)
  36.    {
  37.       _global.MonthlyExpenses -= Number(_global.MortgagePayment3);
  38.    }
  39. }
  40. if(isNaN(Number(_global.DebtPayment)) == 0)
  41. {
  42.    _global.MonthlyExpenses -= Number(_global.DebtPayment);
  43. }
  44. if(isNaN(Number(_global.MonthlySavings)) == 0)
  45. {
  46.    _global.MonthlyExpenses -= Number(_global.MonthlySavings);
  47. }
  48. trace("Monthly Expenses: " + _global.MonthlyExpenses);
  49. var p = _global.Debt;
  50. var c = _global.DebtPayment;
  51. var r = 0.15;
  52. var b = p * (1 + r / 12) - c;
  53. var m = 0;
  54. trace("Consumer Debt -------------------------------------------------");
  55. b = p;
  56. if(_global.Housing != "rent")
  57. {
  58.    if(_global.MortgageQty >= 1)
  59.    {
  60.       trace("Mortgages -----------------------------------------------------");
  61.       i = _global.MortgageQty;
  62.       while(i > 0)
  63.       {
  64.          trace("Mortgage " + i + ": " + _global["MortgageAmount" + i]);
  65.          var m = 12 * (Number(_global["MortgageTerm" + i]) - Number(_global["MortgageTermRemaining" + i]));
  66.          var l = Number(_global["MortgageAmount" + i]);
  67.          var c = Number(_global["MortgageRate" + i]) / 100 / 12;
  68.          var n = 12 * Number(_global["MortgageTerm" + i]);
  69.          var b = l * (Math.pow(1 + c,n) - Math.pow(1 + c,m)) / (Math.pow(1 + c,n) - 1);
  70.          trace("Balance: " + b);
  71.          p = l * (c * Math.pow(1 + c,n)) / (Math.pow(1 + c,n) - 1);
  72.          trace("Payment: " + p);
  73.          var j = 0;
  74.          if(_global.TimeFrame > _global["MortgageTermRemaining" + i])
  75.          {
  76.             j = _global["MortgageTermRemaining" + i] * 12;
  77.          }
  78.          else
  79.          {
  80.             j = _global.TimeFrame;
  81.          }
  82.          trace("j: " + j);
  83.          p += 5000;
  84.          k = 0;
  85.          while(k <= j && b > 0)
  86.          {
  87.             if(b < p * 2)
  88.             {
  89.                tb = b - (p - b * c);
  90.                p += tb;
  91.                trace("Last Payment: " + (k + 1) + " " + p);
  92.             }
  93.             b -= p - b * c;
  94.             trace("New Balance: " + (k + 1) + " " + b);
  95.             k++;
  96.          }
  97.          i--;
  98.       }
  99.    }
  100. }
  101. trace("Phase 1 -------------------------------------------------------");
  102. var e = _global.MonthlyExpenses * 0.1;
  103. trace(e);
  104. var p = _global.Debt;
  105. var c = _global.DebtPayment + _global.MonthlySavings + e;
  106. var r = 0.15;
  107. var b = p * (1 + r / 12) - c;
  108. var m = 0;
  109. trace("Consumer Debt -------------------------------------------------");
  110. while(b > 0 || m == _global.TimeFrame)
  111. {
  112.    var b = b * (1 + r / 12) - c;
  113.    m += 1;
  114.    trace("Month: " + m + "  Balance: " + b);
  115. }
  116. trace(c);
  117. var b = Number(_global.Savings);
  118. var p = 0;
  119. var r = 0.12;
  120. var m = 12;
  121. var t = _global.TimeFrame;
  122. var t = t * m;
  123. var i = r / m;
  124. var myMonth = 1;
  125. trace("Savings -------------------------------------------------------");
  126. while(t > 0)
  127. {
  128.    if(myMonth == 1 || myMonth == 3 || myMonth == 5 || myMonth == 7 || myMonth == 8 || myMonth == 10)
  129.    {
  130.       n = 31;
  131.       myMonth += 1;
  132.    }
  133.    else if(myMonth == 12)
  134.    {
  135.       n = 31;
  136.       myMonth = 1;
  137.    }
  138.    else if(myMonth == 2)
  139.    {
  140.       n = 28;
  141.       myMonth += 1;
  142.    }
  143.    else
  144.    {
  145.       n = 30;
  146.       myMonth += 1;
  147.    }
  148.    b *= 1 + i;
  149.    b += p;
  150.    t -= 1;
  151. }
  152. _global.YourResult = Math.floor(b);
  153. trace("Savings: " + _global.YourResult);
  154. trace("Phase 2 -------------------------------------------------------");
  155. trace("Phase 3 -------------------------------------------------------");
  156. stop();
  157.